The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Today computing devices commonly are equipped for communication over one or more types of computer networks, including wireless networks. Before a computing device is able to connect to a particular wireless computer network, the device typically may undergo some form of device provisioning. In this context, provisioning a device for wireless network connectivity generally may refer to any processes related to configuring the device for connectivity with one or more particular wireless device networks. For example, a smartphone may be provisioned with certain network settings that enable the smartphone to connect and communicate with a particular cellular network, and a wireless sensor device may be provisioned with network settings that enable the wireless sensor to connect and communicate with other wireless sensors. With the Bluetooth protocol, some aspects of provisioning may be performed automatically using a wireless messaging dialog known as pairing. With Wi-Fi, provisioning may involve identifying an access point by name and providing security credentials.
Some provisioning of wireless devices for wireless network connectivity may be carried out by a manufacturer or service provider associated with the devices. For example, a cellular network service provider may be able to provision a smartphone for operation on the service provider's network before the device is provided to an end user. However, for some device use cases, appropriate network settings may be unknown to a manufacturer or service provider associated with a wireless device and provisioning the wireless device before it is provided to an end user may not be feasible for those uses. For example, a particular wireless device may be intended for connectivity with a user's personal wireless network at the user's home. Appropriate settings for connecting to the user's personal home network may have been configured by the user and, in these instances, the user may be responsible for provisioning the device to connect to the user's personal network.
In order to enable an end user to provision certain devices for wireless connectivity, some devices may provide a display, graphical user interfaces, and input controls that enable a user to specify the relevant network configuration information at the device. However, not all networkable computing devices may be equipped with displays and/or input controls, particularly as computing devices become increasingly smaller and may be embedded in other everyday objects. These types of computing devices lacking a graphical display and input controls may be referred to as “headless” devices.
One approach that has been used to enable users to provision a headless device for wireless network connectivity is to use a secondary device connected to the headless device via a direct physical connection such as, for example, a Universal Serial Bus (USB), FireWire, or other physical data connection. The secondary device may then be able to send provisioning data over the physical data connection to the headless device. However, some headless devices may not be equipped with, or do not conveniently expose, a port connector for a physical connection due to size limitations of the device, a desired form factor, and/or other aesthetical reasons related to the device's design.